package com.ruoyi.scrap.domain;

import com.baomidou.mybatisplus.annotation.TableName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

@Builder
@Data
@NoArgsConstructor
@AllArgsConstructor
@TableName("sys_scrap_stock_in")
public class ScrapStockIn extends BaseEntity {

    private static final long serialVersionUID = 1L;

    /** id */
    @TableId(type = IdType.INPUT)
    private String id;
    /** 名称 */
    @Excel(name = "废旧物资名称")
    private String goodsName;
    /** 规格 */
    @Excel(name = "规格型号")
    private String goodsSpec;
    /** 数量 */
    @Excel(name = "数量")
    private Integer goodsNum;
    /** 单位 */
    @Excel(name = "单位")
    private String goodsUnit;
    /** 来源 */
    @Excel(name = "来源",dictType = "deprecition_source")
    private String source;
    /** 原安装使用处所 */
    @Excel(name = "原安装使用处所")
    private String originalUse;
    /** 仓库 */
    @Excel(name = "仓库")
    private String warehouse;
    /** 处置方式 */
    @Excel(name = "处置方式",dictType = "dispose_way")
    private String dispose;
    /** 重量 */
    @Excel(name = "重量")
    private BigDecimal weight;
    /** 送废班次 */
    @Excel(name = "送废班次",dictType = "scrap_shift")
    private String scrapClass;
    /** 送废时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "送废时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date scrapTime;
    /** 收料人 */
    @Excel(name = "收料人")
    private String receiver;
    /** 交料人 */
    @Excel(name = "交料人")
    private String deliverer;
    /** 创建用户 */
    @Excel(name = "创建用户")
    private Long createUser;
    /** 部门id */
    @Excel(name = "部门id")
    private Long createDept;

    private String delFlag;

    private String status;
    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("goodsName", getGoodsName())
                .append("goodsSpec", getGoodsSpec())
                .append("goodsNum", getGoodsNum())
                .append("goodsUnit", getGoodsUnit())
                .append("source", getSource())
                .append("originalUse", getOriginalUse())
                .append("warehouse", getWarehouse())
                .append("dispose", getDispose())
                .append("weight", getWeight())
                .append("scrapClass", getScrapClass())
                .append("scrapTime", getScrapTime())
                .append("receiver", getReceiver())
                .append("deliverer", getDeliverer())
                .append("delFlag", getDelFlag())
                .append("createUser", getCreateUser())
                .append("createDept", getCreateDept())
                .append("createBy", getCreateBy())
                .append("createTime", getCreateTime())
                .append("updateBy", getUpdateBy())
                .append("updateTime", getUpdateTime())
                .toString();
    }
}
